#include <srs_utest_core.hpp>

#ifdef ENABLE_UTEST_CORE

using namespace std;

#include <srs_core_autofree.hpp>

TEST(CoreAutoFreeTest, Free) {
    char* data = new char[32];
    srs_freepa(data);
    EXPECT_TRUE(data == NULL);

    if (true) {
        data = new char[32];
        SrsAutoFreeA(char, data);
    }
    EXPECT_TRUE(data == NULL);
}

TEST(CoreMacroseTest, Check) {
#ifndef SRS_AUTO_BUILD_TS
    EXPECT_TRUE(false);
#endif
#ifndef SRS_AUTO_BUILD_DATE
    EXPECT_TRUE(false);
#endif
#ifndef SRS_AUTO_UNAME
    EXPECT_TRUE(false);
#endif
#ifndef SRS_AUTO_USER_CONFIGURE
    EXPECT_TRUE(false);
#endif
#ifndef SRS_AUTO_CONFIGURE
    EXPECT_TRUE(false);
#endif
#ifndef SRS_AUTO_EMBEDED_TOOL_CHAIN
    EXPECT_TRUE(false);
#endif
#ifndef SRS_AUTO_PREFIX
    EXPECT_TRUE(false);
#endif
#ifndef SRS_AUTO_CONSTRIBUTORS
    EXPECT_TRUE(false);
#endif
}

#endif

